import request from '@/config/axios'

// 司机管理 VO
export interface DriverVO {
  id: number // ID
  carrierUcss: string // 承运商统一信用代码
  carrierName: string // 承运商/车队长名称
  driverName: string // 司机名称
  driverIdCardNo: string // 司机身份证号
  driverGender: string // 司机性别
  driverPhone: string // 司机手机号
  driverKind: string // 司机类别
  grantOrg: string // 签发机关
  icStartDate: Date // 身份证有效起始日期
  icEndDate: Date // 身份证有效截止日期
  idCardFurl: string // 身份证正面
  idCardBurl: string // 身份证反面
  driverLicenseNo: string // 驾驶证号
  approveType: string // 准驾类型
  firstCertDate: Date // 初次领证时间
  issueOrg: string // 发证机关
  dlStartDate: Date // 驾驶证有效起始日期
  dlEndDate: Date // 驾驶证有效终止日期
  licenseFurl: string // 驾驶证正面
  licenseBurl: string // 驾驶证反面
  certNo: string // 从业资格证号
  certKind: string // 从业资格证类别
  certIssueOrg: string // 发证机关
  certEndDate: Date // 有效期至
  certUrl: string // 从业资格证照
  authStatus: number // 审核状态 0-待审核 1-审核通过 -1审核失败
  deptId: number // 机构ID
}

// 司机管理 API
export const DriverApi = {
  // 查询司机管理分页
  getDriverPage: async (params: any) => {
    return await request.get({ url: `/base/driver/page`, params })
  },

  // 查询司机管理详情
  getDriver: async (id: number) => {
    return await request.get({ url: `/base/driver/get?id=` + id })
  },

  // 新增司机管理
  createDriver: async (data: DriverVO) => {
    return await request.post({
      url: `/base/driver/create`,
      headersType: 'multipart/form-data',
      data
    })
    // return await request.post({ url: `/base/driver/create`, data })
  },

  // 修改司机管理
  updateDriver: async (data: DriverVO) => {
    return await request.post({
      url: `/base/driver/update`,
      headersType: 'multipart/form-data',
      data
    })
    // return await request.put({ url: `/base/driver/update`, data })
  },

  // 删除司机管理
  deleteDriver: async (id: number) => {
    return await request.delete({ url: `/base/driver/delete?id=` + id })
  },

  // 批量删除司机管理
  deleteDrivers: async (ids: string) => {
    return await request.delete({ url: `/base/driver/deletes?ids=` + ids })
  },

  // 导出司机管理 Excel
  exportDriver: async (params) => {
    return await request.download({ url: `/base/driver/export-excel`, params })
  }
}
